// 实现instance
// 实质就是判断
function myInstance(obj, Obj) {
    let objpro = obj.__proto__;
    let objProto = Obj.prototype;
    while (true) {
        if (objpro == objProto) {
            return true
        } else if (objProto == null) {
            return false
        }
        objpro = objProto.__proto__; // 应该是不断操作实例
    }
}

// 实现new
// new 的本质就是 将返回对象的 __proto__ 指向 构造函数的prototype
function mynew(obj, ...args) {  // 需要传递参数
    let newobj = Object.create(obj.prototype);
    obj.apply(newobj, args);  // 绑定this，传入参数
    return newobj
}